#include <boost/filesystem.hpp>
#include <iostream>

int main(int argc, char* argv[])
{
    if (argc < 2){
        std::cout << "Usage11: " << argv[0] << " path\n";
        return 1;
    }

    boost::filesystem::path p(argv[1]);

    if (boost::filesystem::exists(p)) {
        if (boost::filesystem::is_directory(p))
            std::cout << p << " is a directory.\n";
        else if (boost::filesystem::is_regular_file(p))
            std::cout << p << " is a regular file.\n";
        else
            std::cout << p << " exists but is not a directory or regular file.\n";
    } else {
        std::cout << p << " does not exist.\n";
    }

    return 0;
}
